#pragma once

#include "IEvent.h"
#include "HashedString.h"
#include "Point.h"

class OnMouseEvent : public IEvent
{
public:
	OnMouseEvent( unsigned int x, unsigned int y );

	virtual const HashedString& Type() = 0;
	Maths::Point<int>& Coords();
	bool& ControlKey();
	bool& ShiftKey();
protected:
	Maths::Point<int> m_Coords;
	bool m_controlKey;
	bool m_shiftKey;
};